import request from '@/utils/request'



/**
 * 生成跟踪号
 * @returns {Promise} - 返回生成的跟踪号
 */
export function generateTrackingNumber() {
    return request({
        url: '/delivery/allocationOrder/generateTrackingNumber',
        method: 'post',
    });
}

/**
 * 查询调拨单列表
 * @param {Object} query - 查询参数，包括分页、筛选条件等
 * @returns {Promise} - 返回调拨单数据和分页信息
 */
export function listAllocation(query) {
    return request({
        url: '/delivery/allocationOrder/list',
        method: 'get',
        params: query,
    });
}

/**
 * 新增调拨单
 * @param {Object} data - 调拨单信息
 * @returns {Promise} - 返回新增结果
 */
export function addAllocation(data) {
    return request({
        url: '/delivery/allocationOrder/add',
        method: 'post',
        data,
    });
}

/**
 * 更新调拨单
 * @param {Object} data - 调拨单信息
 * @returns {Promise} - 返回更新结果
 */
export function updateAllocation(data) {
    return request({
        url: '/delivery/allocationOrder/update',
        method: 'put',
        data,
    });
}

/**
 * 删除调拨单
 * @param {String} allocationNo - 调拨单号
 * @returns {Promise} - 返回删除结果
 */
export function deleteAllocation(allocationNo) {
    return request({
        url: `/delivery/allocationOrder/delete`,
        method: 'delete',
        params: { allocationNo },
    });
}

/**
 * 获取调拨订单详情
 * @param {String} allocationNo - 调拨单号
 * @returns {Promise} - 返回调拨单详情
 */
export function getAllocationDetail(allocationNo) {
    return request({
        url: `/delivery/allocationOrder/details`,
        method: 'get',
        params: { allocationNo },
    });
}